package com.sls.web.manager.game.service;

import java.util.List;

import com.sls.web.manager.game.pojo.OhFeiGoodsAreaServerInfo;
import com.sls.web.manager.game.pojo.OhFly;
import com.sls.web.manager.game.pojo.OhFlyBrand;
import com.sls.web.manager.game.pojo.OhFlyUserInfo;
import com.sls.web.manager.game.pojo.SyncInfo;
import com.sls.web.manager.game.querybean.OhFeiGoodsAreaServerQuery;
import com.sls.web.manager.game.querybean.OhFlyBrandQuery;
import com.sls.web.manager.game.querybean.OhFlyQuery;
import com.sls.web.manager.page.Pagination;
import com.sls.web.manager.pojo.UserInfoVO;

public interface OhFlyService {

	/**
	 * 分页查询
	 * 
	 * @param nutsNetQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<OhFly> queryOhFly(OhFlyQuery ohFlyQuery,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 查询详情
	 * 
	 * @param goodId
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public OhFly queryDetailById(String goodsId, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 同步殴飞小类商品信息
	 * 
	 * @param ohFlyUserInfo
	 * @return
	 * @throws Exception
	 */
	public SyncInfo brandSynchronize(OhFlyUserInfo ohFlyUserInfo,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 殴飞小类商品信息分页显示
	 * 
	 * @param ohFlyBradQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<OhFlyBrand> queryOhFlyBrand(
			OhFlyBrandQuery ohFlyBrandQuery, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 根据用户名和密码查询用户信息
	 * 
	 * @param userId
	 * @param userpws
	 * @return
	 * @throws Exception
	 */
	public OhFlyUserInfo queryUerInfo(String userId, String userpws,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 游戏区服查询
	 * 
	 * @param ohFlyGameQuery
	 * @return
	 * @throws Exception
	 */
	public Pagination<OhFeiGoodsAreaServerInfo> queryOhFlyGameArea(
			OhFeiGoodsAreaServerQuery ohFeiGoodsAreaServerQuery,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 殴飞游戏区服同步
	 * 
	 * @param gameId
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public int ohFlyGameAreaSync(String gameId, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 具体商品信息同步
	 * 
	 * @param ohFlyUserInfo
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public SyncInfo detailGoodsInfoSync(OhFlyUserInfo ohFlyUserInfo,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 查询用户名和密码
	 * 
	 * @return
	 * @throws Exception
	 */
	public List<OhFlyUserInfo> queryOhFlyUserInfo(UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 确认审核
	 * 
	 * @param nutsNetId
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public boolean confirmAudit(String suppliersId, int priceRatio,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 批量上架
	 * 
	 * @param string
	 * @param userInfoVO
	 */
	public void batchOnline(String goodsState, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 批量下架
	 * 
	 * @param string
	 * @param userInfoVO
	 * @throws Exception
	 */
	public void batchOffline(String goodsState, UserInfoVO userInfoVO)
			throws Exception;
}
